<template>
  <div>
    <h1>当前求和为:{{ $store.state.sum }}</h1>
    <h1>当前求和放大十倍后的值是:{{ $store.getters.bigSum }}</h1>
    <!--让其收集到的数据全是number类型的 number修饰符-->
    <select v-model.number="n">
      <!--让所有的value全部绑定为数字-->
      <option value="1">1</option>
      <option value="2">2</option>
      <option value="3">3</option>
    </select>
    <button @click="increment">+</button>
    <button @click="decrement">-</button>
    <button @click="incrementOdd">当前求和为奇数再加</button>
    <button @click="incrementWait">等一等再加</button>
    <button @click="chainfilter">测试链式action调用</button>
  </div>
</template>

<script>
export default {
  //计数组件
  name: "Count2",
  data(){
    return {
      n: 1 // 代表用户在select框开始的时候选择的数字 用户选择的数据和该值进行双向的绑定
    }
  },
  methods:{
    increment(){
      //this.sum += this.n;
      this.$store.dispatch('increment',this.n)
    },
    decrement(){
      this.$store.dispatch('decrement',this.n)
    },
    //判断state的状态值为奇数时在加
    incrementOdd(){
      //this.sum = this.sum % 2 !== 0 ? this.sum + this.n :  this.sum;
      this.$store.dispatch('incrementOdd',this.n)
    },
    incrementWait(){
      //setTimeout(() => this.sum += this.n,2000)
      this.$store.dispatch('incrementWait',this.n)
    },
    chainfilter(){
      this.$store.dispatch('chainfilter',this.n)
    }
  },
  mounted(){
    //组件挂载完成输出store对象
    console.log(this.$store);
  }
  
}
</script>

<style scoped>
   button{
     margin-left: 5px;
   }
</style>
